﻿namespace XmlVisualizer.Logging
{
    using System;
    using System.Collections;
    using System.Collections.ObjectModel;
    using System.Configuration;
    using System.IO;
    using System.Reflection;
    using System.Text;
    using System.Windows;
    using System.Windows.Controls;
    using System.Windows.Data;
    using System.Windows.Documents;
    using System.Windows.Input;
    using System.Windows.Media;
    using System.Windows.Media.Imaging;
    using System.Windows.Navigation;
    using System.Windows.Shapes;
    using System.Xml;
    using System.Xml.Schema;
    using System.Xml.XPath;

    using VS;

    using XmlVisualizer.Controllers;
    using XmlVisualizer.DiagramDesigner;
    using XmlVisualizer.DiagramDesigner.Controls;
    using XmlVisualizer.Exceptions;
    using XmlVisualizer.Models;

    /// <summary>
    /// Logging class.
    /// </summary>
    public static class Log
    {
        private static Logger logger = Logger.Singleton();

        /// <summary>
        /// Adds a message to the log.
        /// </summary>
        /// <param name="level">Message's level.</param>
        /// <param name="tag">Message's tag.</param>
        /// <param name="message">Message to log.</param>
        public static void AddMessage(LoggerLevels level, string tag, string message)
        {
            logger.Log(level, tag, message);
        }

        public static void Stop()
        {
            logger.Shutdown();
        }
    }
}